
import * as THREE from 'three';
import { OrbitControls } from 'three/examples/jsm/controls/OrbitControls';
import { TransformControls } from 'three/examples/jsm/controls/TransformControls';
import IElement from '../interface/IElement';

export default class State {

    /** canvas 容器 */
    cont?: HTMLDivElement | null;

    /** 轨道控制器 */
    controls?: OrbitControls;

    /** 场景 */
    scene?: THREE.Scene;

    /** 摄像机 */
    camera?: THREE.PerspectiveCamera;

    /** 渲染器 */
    renderer?: THREE.WebGLRenderer;

    /** 原件控制器 */
    transformControls?: TransformControls;

    /** 原件字典 */
    elementMap = new Map<string, IElement>();

    /** 选中原件的UUID */
    selectedElementUuid?: string;

    /** 选中得工具 */
    selectedTool = '';
}
















